{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Demo 5: Algorithms01"
   ]
  },
  {
   "cell_type": "raw",
   "metadata": {},
   "source": [
    "This demo will demonstrate the options for plotting projections and images on TIGRE. The functions have been in previous demos, but in here an exaustive explanation and usage of them is given.\n",
    "NOTE: if you havent already downloaded the tigre_demo_file and navigated to the correct directory, do so before continuing with this demo. \n",
    "--------------------------------------------------------------------------\n",
    "This file is part of the TIGRE Toolbox\n",
    "\n",
    "Copyright (c) 2015, University of Bath and\n",
    "                    CERN-European Organization for Nuclear Research\n",
    "                    All rights reserved.\n",
    "\n",
    "License:            Open Source under BSD.\n",
    "                    See the full license at\n",
    "                    https://github.com/CERN/TIGRE/license.txt\n",
    "\n",
    "Contact:            tigre.toolbox@gmail.com\n",
    "Codes:              https://github.com/CERN/TIGRE/\n",
    "--------------------------------------------------------------------------\n",
    "Coded by:          MATLAB (original code): Ander Biguri\n",
    "                   PYTHON : Reuben Lindroos"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Define Geometry"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from tigre.geometry import TIGREParameters\n",
    "geo=TIGREParameters(high_quality=False)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Load data and generate projections"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "from _Ax import Ax\n",
    "from Test_data import data_loader\n",
    "# define angles\n",
    "angles=np.linspace(0,2*np.pi,dtype=np.float32)\n",
    "# load head phantom data\n",
    "head=data_loader.load_head_phantom(number_of_voxels=geo.nVoxel)\n",
    "# generate projections\n",
    "projections=Ax(head,geo,angles,'interpolated')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Usage of FDK"
   ]
  },
  {
   "cell_type": "raw",
   "metadata": {},
   "source": [
    "the FDK algorithm has been taken and modified from \n",
    "3D Cone beam CT (CBCT) projection backprojection FDK, iterative reconstruction Matlab examples\n",
    "https://www.mathworks.com/matlabcentral/fileexchange/35548-3d-cone-beam-ct--cbct--projection-backprojection-fdk--iterative-reconstruction-matlab-examples\n",
    "\n",
    "The algorithm takes, as eny of them, 3 mandatory inputs:\n",
    "PROJECTIONS: Projection data\n",
    "GEOMETRY   : Geometry describing the system\n",
    "ANGLES     : Propjection angles\n",
    "And has a single optional argument:\n",
    "FILTER: filter type applied to the projections. Possible options are\n",
    "        'ram-lal' (default)\n",
    "        'shepp-logan'\n",
    "        'cosine'\n",
    "        'hamming'\n",
    "        'hann'\n",
    " The choice of filter will modify the noise and sopme discreatization\n",
    " errors, depending on which is chosen."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f65e0e5ba10>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "<tigre.Utilities.plotImg.plotImg instance at 0x7f65e0bb0bd8>"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from tigre.Algorithms.FDK import FDK\n",
    "imgfdk1=FDK(projections,geo,angles,filter='ram_lak')\n",
    "imgfdk2=FDK(projections,geo,angles,filter='hann')\n",
    "# The look quite similar:\n",
    "from tigre.Utilities.plotImg import plotImg\n",
    "plotImg(np.hstack((imgfdk1,imgfdk2)),slice=32,dim='x')"
   ]
  },
  {
   "cell_type": "raw",
   "metadata": {},
   "source": [
    "On the other hand it can be seen that one has bigger errors in the whole\n",
    "image while the other just in the boundaries"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n391OauApgRrH1RqNE1FJs3PBTr6U9Eqa9jmlMiVbsoNJkq6//npJeQNrzjM6gV0nWR3Lp9PNsDwO\nPfTQ4RzLtyN2LAlU2hXI/aX2tyy9qqRZuft4LBwwBRmkXaPSakw+Q2n1ckonO5ZIy2CZyVmZVg2z\nzJQAbWxnJYPzx/OXDsrkZDbTk6bjygAJPo9uB591joGfNzJaz0+29957792pGvqfSfpdSRyRTb13\n2zHulLRpxV2FQqFQWDPMfaG31t4q6a7e++Vj1/SlT2hU9Vtrp7XWLmutXbaWIZKFQqGwu2GuyaW1\n9ieSfl3SNkn7SHqypE9IeoV2wOSyfFchxmea6tIhQueLKVGimtLUsUTa6N9JaVPCJiaOcgw1nUnz\nnE1EWgVpcwLzt9PEYMo2tvLNsdNc5eixo0OF5gLLkSaG1B/OAcuD9JXttHmGTtHk5Etxt6Sy7k9K\nUMZ7uA6Bu0q5fRxXzw+e41zyuLAezyVSa5qg7LTlWHL+JadpyuVOebjtlAfbPM80YbBvKYGV28y2\ncSxTPvS0MpLPmO/hPOUYuk8sMznv+XuKKZ8nA9/PZ5DttIzT7kApyZs0HQMm70rmX7bd9/O5TonJ\nKKO0CpvvJP/Oeu67776dY3Lpvb+v935g7/1gSW+XdEHv/dcknS/p1Mllp0o6b15ZhUKhUNh1eDRx\n6O+X9MbW2vWS3jD5u1AoFAqPEdZ86b9pj6MPSAdtTiBlSUuquW3ZDTfcMBwfdthhK+p0ZANpFM0S\naQPdFPdKmubjtGmxlM0FNqkw7poU0dSQ8mDUiKksqVlKlMV4ZiMleWLZzA+fzDNJDimZFCMTKC/X\nxWX+Nn+Q4jNyJm0nSPOb76Pc05L7tPkyf7e8PE+k2THyeJAmJ9NB2uaPbXe8uyRdeumlK8pMSOsl\nCMrY7eC5FJGSIqfGomBS7H1KDpa2qEvRP+xDildnO5LZIpVFGc2LsU8yStvi0SzFpf+eN4xoOfLI\nIyVJ11133XAuRdaM5Y/3tTTtuL98f9xyyy219L9QKBR2J6wMzNzF8JfVGmdKa5uSVknTL2NyQEnT\nWE5+/f0Fp0ONX2h/Bfm7y2c91ARSfC53RPKq1OToSHHkBL/edJRZO0jaFMthm1wnV5xZi6FDLsU2\njyUJ80pfytgaPjXf5KilxuE485QYjO2gDKg5uUyOv1fWcn0A4XZSk7M8eS7Jne0krElSo/R4UIaJ\n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\nfar+PP6xaH2q/uwE7LANvVAoFAqPL1Qul0KhUFgQrOkLvbX25tbada21G1prp69l3TsDrbWDWmsX\ntnmTxI4AAAQISURBVNaubq19p7X2W5Pz+7fWvtBau37y/9PmlfV4QmttY2vtG621T03+Xu/9eWpr\n7dzW2rWttWtaa7+0nvvUWnvvZL5d1Vr7u9baPuupP621v2mt3dVauwrnRtvfWnvf5B1xXWvtVx6b\nVm8fI336wGTOfau19vettafitzXp05q90Bck98s2Sb/dez9C0qsk/eakD6dL2tJ73yxpy+Tv9YTf\nknQN/l7v/fmgpM/23l8o6Sgt9W1d9qm19hxJ/03Ssb33I7UUUfZ2ra/+fFjSm5edi+2fPE9vl/Ti\nyT3/e/LueLzhw1rZpy9IOrL3/lIthXS/T1rbPq2lhj7kfum9PyjJuV/WDXrvd/Ter5gc/1RLL4rn\naKkfZ04uO1PS2x6bFj5ytNYOlPTvJX0Ip9dzf54i6d9J+mtJ6r0/2Hu/V+u4T1qKRtt3svZjP0nf\n1zrqT+/9y5J+vOz0WPtPlnRW7/2B3vtNkm7Q0rvjcYXUp97753vvTsDyNUlOnbpmfVrLF/qqcr+s\nF7TWDpZ0tKRLJG3qvTuH6J2SNo3c9njEn0n6XUnM/7me+3OIpB9K+tuJGelDrbUnaJ32qfd+u6T/\nJekWSXdI+knv/fNap/0Bxtq/KO+J/yzpM5PjNetTOUV3AK21J0r6uKT39N7v4299KWxoXYQOtdbe\nKumu3vvlY9esp/5MsIekYyT9Ve/9aC2lmpgxR6ynPk1syydr6UP1bElPaK39Gq9ZT/1JWO/tX47W\n2u9ryTz7sbWuey1f6LdLOgh/Hzg5t67QWttTSy/zj/XePzE5/YPW2gGT3w+QdNfY/Y8zvEbSSa21\nrVoygb2+tfZRrd/+SEvaz22990smf5+rpRf8eu3TGyTd1Hv/Ye/9IUmfkPRqrd/+GGPtX9fvidba\nf5T0Vkn/oU9jwtesT2v5Qr9U0ubW2iGttb205CQ4fw3rf9RoS4mO/1rSNb33P8VP50s6dXJ8qqTz\nlt/7eETv/X299wN77wdraTwu6L3/mtZpfySp936npFtbay+YnDpBSzn612ufbpH0qtbafpP5d4KW\nfDfrtT/GWPvPl/T21trerbVDJG2W9PXHoH2PGG1pB7fflXRS7507ya9dn3rva/ZP0lu05P39nqTf\nX8u6d1L7j9MSNfyWpCsn/94i6ela8tRfL+mLkvZ/rNu6A307XtKnJsfruj+SXibpssk4fVLS09Zz\nnyT9T0nXSrpK0kck7b2e+iPp77Rk/39ISwzqXdtrv6Tfn7wjrpN04mPd/kfQpxu0ZCv3u+H/rHWf\naqVooVAoLAjKKVooFAoLgnqhFwqFwoKgXuiFQqGwIKgXeqFQKCwI6oVeKBQKC4J6oRcKhcKCoF7o\nhUKhsCCoF3qhUCgsCP4/1ACIpllK1eoAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f65e5d3b550>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "<tigre.Utilities.plotImg.plotImg instance at 0x7f65e0ea44d0>"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dif1=abs(head-imgfdk1)\n",
    "dif2=abs(head-imgfdk2)\n",
    "plotImg(np.hstack((dif1,dif2)),slice=32,dim='x')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
